.\" -*-nroff-*-
.TH GAUCHE\-CONFIG "1" "" "Gauche @GAUCHE_VERSION@" "Gauche Commands"
.SH NAME
gauche-config \- retrieve configuration parameters of Gauche
.SH SYNOPSIS
.B gauche-config
.I option
.br
.sp 0.3
.SH DESCRIPTION
.I Gauche-config
displays various parameters specified at the configuration time
of the Gauche Scheme implementation.  It can be used in Makefile
and other configuration scripts that uses Gauche.

.SH OPTIONS
.SS General parameters
.TP 5
.B -V
Gauche version.
.TP
.B --reconfigure
Prints the command line used to configure the current Gauche installation.
It is pretty handy to configure another Gauche source tree with the same
configuration; just type `gauche-config --reconfigure | sh'.

.SS Parameters to compile an application using Gauche
.TP
.B -I, -L, -l
List of "-I" options (include directories),
"-L" options (library directories), and
"-l" options (libraries) for the compiler
which are required to compile applications that links Gauche library.
.TP
.B --cc
Name of the compiler used to compile the current installation.
.TP
.B --ac
Directory name that contains Gauche specific autoconf macro.
.TP
.B --arch
The architecture signature, which is used in the pathname of
architecture-dependent files, e.g. "i686-pc-linux-gnu".

.SS Parameters to install files
.TP
.B --syslibdir, --sysarchdir, --sysincdir
Directories where the Gauche core system's Scheme files,
architecture-dependent files, and header files are installed,
respectively.
These directories belong to Gauche core; additional packages
should not put files in them.
.TP
.B --sitelibdir, --sitearchdir, --siteincdir
Directories where the additional packages will put
Scheme files, architecture-dependent files, and
header files, respectively.
.TP
.B --pkglibdir, --pkgarchdir, --pkgincdir
Same as --sitelibdir etc, except that the base directory name
is left as `${datadir}'.  The result is suitable to be embedded
in Makefiles, for the base directory could be overridden at
build time rather than configure time.  The default template for
Gauche extension packages use these options.
.TP
.B --mandir, --infodir
Directories where gauche manpage and info docs are installed.

.SS Parameters to compile Gauche extension
.TP
.B --object-suffix
Extension of the compiled objects (e.g. 'o').
.TP
.B --executable-suffix
Suffix of the executable (usually empty on Unix variants,
and '.exe' on Windows.  Note that '.' is a part of suffix in
this option, as opposed to other -suffix options.
.TP
.B --so-suffix
Extension of the dynamically loadable (dlopen-able) modules
(e.g. 'so' or 'dll').
.TP
.B --so-cflags
Flags required to compile shared object.
.TP
.B --so-ldflags
Flags required to link a gauche extension.
.TP
.B --so-libs
Libraries to be linked with a gauche extension.
.TP
.B --dylib-suffix
Suffix for dynamically linked libraries.  Some unix variants
require special suffix (such as 'dylib').  On other platforms
this is the same as '--so-suffix'.
.TP
.B --dylib-ldflags
Flags required to link dynamically linked library file.
Some unix variants require special flags.  On other platforms
this is the same as '--so-ldflags'.
.TP
.B --rpath-flag
Compler flag(s) to embed RPATH in the binary.
.TP
.B --libgauche-so
The name of shared library of libgauche.

.SH AUTHORS
Shiro Kawai (shiro @ acm . org)

.SH SEE ALSO
gosh(1), gauche-package(1)
.PP
Gauche Scheme script engine:
.br
https://practical-scheme.net/gauche/

